package cn.edu.ctbu.myfirstweb.dao;

import cn.edu.ctbu.myfirstweb.domain.SC;
import cn.edu.ctbu.myfirstweb.domain.SCID;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;

import javax.transaction.Transactional;
import java.io.Serializable;
import java.util.List;

public interface SCRepository extends JpaRepository<SC, SCID>,
        JpaSpecificationExecutor<SCRepository>,
        Serializable {
    @Modifying//通知SpringData这是一个update或delete操作
    @Transactional
//此操作需要使用事务
    void deleteById(SCID scid);

    @Query(nativeQuery = true, value = "select * from tb_sc where cid1 = :cid")
    List<SC> getByCid(@Param("cid") Long cid);

    SC getByScid(SCID scid);
}